home *** CD-ROM | disk | FTP | other *** search
/ PC Gamer (Italian) 35 / PC Gamer IT CD 35 1-2.iso / ARMYMEN / Maps / mheader_1.txt < prev    next >
Text File  |  1998-04-13  |  5KB  |  137 lines

  1.     // multiple player std header for ALL multiplayer missions
  2.  
  3.  
  4. ////////////////////////////////////////////////////////////////////////
  5. //INSTRUCTIONS FOR BUILDING MULTIPLAYER SCRIPTS
  6. // 1. include this file in the .rul file to get proper support for leaving
  7. // 2. REMEMBER- Only the host triggers events, and sends that eventname
  8. //    to the clients to trigger them.
  9. //    HENCE - TRIGGER commands in scripts are only executed on the host
  10. ////////////////////////////////////////////////////////////////////////
  11.  
  12.  
  13. // declaration events of who is or is not human at game startup
  14.  
  15. // xxxai means he never started after setup as human
  16. IF ONEOF greenleftearly greennotplaying BUTNOT startup THEN TRIGGER greenai
  17. IF ONEOF tanleftearly tannotplaying BUTNOT startup THEN TRIGGER tanai
  18. IF ONEOF blueleftearly bluenotplaying BUTNOT startup THEN TRIGGER blueai
  19. IF ONEOF grayleftearly graynotplaying BUTNOT startup THEN TRIGGER grayai
  20. // xxxhuman means he did start as human
  21. IF startup BUTNOT greenai THEN TRIGGER greenhuman
  22. IF startup BUTNOT tanai THEN TRIGGER tanhuman
  23. IF startup BUTNOT blueai THEN TRIGGER bluehuman
  24. IF startup BUTNOT grayai THEN TRIGGER grayhuman
  25.  
  26.  
  27. // for alliances among the AI players
  28. IF ALLOF greenai tanai THEN
  29.     ALLY GREEN TAN,
  30.     ALLY TAN GREEN
  31. IF ALLOF greenai blueai THEN
  32.     ALLY GREEN BLUE,
  33.     ALLY BLUE GREEN
  34. IF ALLOF greenai grayai THEN
  35.     ALLY GREEN GRAY,
  36.     ALLY GRAY GREEN
  37. IF ALLOF tanai blueai THEN
  38.     ALLY TAN BLUE,
  39.     ALLY BLUE TAN
  40. IF ALLOF tanai grayai THEN
  41.     ALLY TAN GRAY,
  42.     ALLY GRAY TAN
  43. IF ALLOF blueai grayai THEN
  44.     ALLY BLUE GRAY,
  45.     ALLY GRAY BLUE
  46.  
  47. // if all but one player not available during startup, deploy all other armies as ai automatically
  48. // otherwise it is up to a lower script to decide
  49. IF ALLOF greenai tanai blueai THEN  TRIGGER oneplayer
  50. IF ALLOF greenai tanai grayai THEN     TRIGGER oneplayer
  51. IF ALLOF greenai grayai blueai THEN  TRIGGER oneplayer
  52. IF ALLOF grayai tanai blueai THEN     TRIGGER oneplayer
  53. IF oneplayer THEN 
  54.     TRIGGER keepai,
  55.     SHOWMESSAGE "Welcome to multiplayer boot camp!"
  56.  
  57. // if ai is running, deploy forces for ai players
  58. IF ALLOF keepai greenai THEN DEPLOY GREEN ATMODE ATTACK
  59. IF ALLOF keepai tanai THEN DEPLOY TAN ATMODE ATTACK
  60. IF ALLOF keepai blueai THEN DEPLOY BLUE ATMODE ATTACK
  61. IF ALLOF keepai grayai THEN DEPLOY GRAY ATMODE ATTACK
  62.  
  63. IF ALLOF keepai startup THEN NOTIFY BLUE GREEN 2 // tell system to show all players in ui
  64.  
  65.  
  66. // if someone leaves during setup, tell user and prepare for undeploy or oneplayer
  67. // NOTE the keepai event will suppress removal of ai army
  68. IF  greenleftearly THEN  TRIGGERDELAY 1 greenexit
  69. IF greenexit BUTNOT  keepai THEN
  70.     SHOWMESSAGE "Green Army has left during setup",
  71.     TRIGGER greennotplaying
  72. IF tanleftearly THEN TRIGGERDELAY 1 tanexit
  73. IF tanexit BUTNOT  keepai THEN
  74.     SHOWMESSAGE "Tan Army has left during setup",
  75.     TRIGGER tannotplaying
  76. IF blueleftearly THEN TRIGGERDELAY 1 blueexit
  77. IF blueexit BUTNOT  keepai THEN
  78.     SHOWMESSAGE "Blue Army has left during setup",
  79.     TRIGGER bluenotplaying
  80. IF grayleftearly THEN TRIGGERDELAY 1 grayexit
  81. IF grayexit BUTNOT  keepai THEN
  82.     SHOWMESSAGE "Gray Army has left during setup",
  83.     TRIGGER graynotplaying
  84.  
  85. // if player leaves after setup, tell user
  86. IF INORDER startup greennotplaying THEN SHOWMESSAGE "Green Army has left the game"
  87. IF INORDER startup tannotplaying THEN SHOWMESSAGE "Tan Army has left the game"
  88. IF INORDER startup bluenotplaying THEN SHOWMESSAGE "Blue Army has left the game"
  89. IF INORDER startup graynotplaying THEN SHOWMESSAGE "Gray Army has left the game"
  90.  
  91. // when someone is not playing, remove him if not a oneplayer game
  92. IF greennotplaying THEN TRIGGERDELAY 0.1 greengone
  93. IF tannotplaying THEN TRIGGERDELAY 0.1 tangone
  94. IF bluenotplaying THEN TRIGGERDELAY 0.1 bluegone
  95. IF graynotplaying THEN TRIGGERDELAY 0.1 graygone
  96.  
  97. // remove player from game and trigger an event that you did so.
  98. IF greengone BUTNOT keepai THEN 
  99.     TRIGGER nogreen,
  100.     UNDEPLOY GREEN
  101. IF tangone BUTNOT keepai THEN 
  102.     TRIGGER notan,
  103.     UNDEPLOY TAN
  104. IF bluegone BUTNOT keepai THEN 
  105.     TRIGGER noblue,
  106.     UNDEPLOY BLUE
  107. IF graygone BUTNOT keepai THEN 
  108.     TRIGGER nogray,
  109.     UNDEPLOY GRAY
  110.  
  111.  
  112. // handle generic winning
  113.  
  114. // delay wins and do lockout (only the host will do the triggers)
  115. IF ONEOF graywon greenwon bluewon THEN TRIGGERDELAY 0.1 foetan
  116. IF ONEOF tanwon greenwon bluewon THEN TRIGGERDELAY 0.1 foegray
  117. IF ONEOF graywon greenwon tanwon THEN TRIGGERDELAY 0.1 foeblue
  118. IF ONEOF graywon tanwon bluewon THEN TRIGGERDELAY 0.1 foegreen
  119.  
  120. IF greenwon  THEN TRIGGER greenwillwin
  121. IF tanwon  THEN TRIGGER tanwillwin
  122. IF bluewon  THEN TRIGGER bluewillwin
  123. IF graywon  THEN TRIGGER graywillwin
  124.  
  125. IF tanwillwin BUTNOT foetan THEN
  126.     SHOWMESSAGE "Tan won",
  127.     TRIGGERDELAY 2 tanwins
  128. IF greenwillwin BUTNOT foegreen THEN
  129.     SHOWMESSAGE "Green won",
  130.     TRIGGERDELAY 2 greenwins
  131. IF bluewillwin BUTNOT foeblue THEN
  132.     SHOWMESSAGE "Blue won",
  133.     TRIGGERDELAY 2 bluewins
  134. IF graywillwin BUTNOT foegray THEN
  135.     SHOWMESSAGE "Gray won",
  136.     TRIGGERDELAY 2 graywins
  137.